package com.xff.factory;

import com.xff.bean.Person;
import org.springframework.beans.factory.FactoryBean;

/*
* 此方式是spring创建bean的一种补充，用户可以按照需求创建对象
* 创建的对象交由spring IOC容器进行管理，无论是否是单例，
* 都是在用到的时候才会创建该对象，不用该对象的时候不会进行创建
* */

public class MyFactoryBean implements FactoryBean<Person> {

    //返回获取的bean
    @Override
    public Person getObject() throws Exception {
        Person person=new Person();
        person.setId(3);
        person.setName("王五");
        return person;
    }

    //返回bean的类型
    @Override
    public Class<?> getObjectType() {
        return Person.class;
    }

    //是否是单例的
    @Override
    public boolean isSingleton() {
        return true;
    }
}
